package com.javaweb.annotation.url;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import com.javaweb.constant.CommonConstant;
import com.javaweb.enums.AuthEnum;

/**
 * controller层接口方法注解
 * @author tank2140896
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface ControllerMethod {
	
	/**
	 * 接口名称
	 * @return String 接口名称
	 */
	String interfaceName() default CommonConstant.EMPTY_VALUE;
	
	/**
	 * 数据权限
	 * @return Class<?> 数据权限
	 */
	Class<?> dataPermissionEntity() default ControllerMethod.class;
	
	/**
	 * 访问权限
	 * @see AuthEnum
	 * @return AuthEnum 权限，默认无需登录可访问（即任何人都可以访问）
	 */
	AuthEnum auth() default AuthEnum.NO_LOGIN;

}
